#ifndef DLGDAILYNECESS_H
#define DLGDAILYNECESS_H

//(*Headers(DlgUser)
#include <wx/dialog.h>
//*)
#include <wx/textctrl.h>
#include <wx/button.h>
#include <wx/choice.h>
#include <wx/combobox.h>
#include <wx/listctrl.h>
#include <wx/datectrl.h>
#include <wx/log.h>
#include <vector>
#include <utility>
#include "PublicData.h"
#include "wxNumberCtrl.h"
using std::vector;
using std::pair;

class CDlgDailyNecess: public wxDialog
{
public:

    CDlgDailyNecess(wxString typeID,wxWindow* parent,wxWindowID id=wxID_ANY,const wxPoint& pos=wxDefaultPosition,const wxSize& size=wxDefaultSize);
    virtual ~CDlgDailyNecess();

private:
//控件ID
    static const long IDC_BTN_ADD_MOD;
    static const long IDC_BTN_EXIT;
    static const long IDC_BTN_SEARCH;
    static const long IDC_BTN_DEL;
    static const long IDC_COMBO_TYPE;
    static const long IDC_COMBO_SEARCH;
    static const long IDC_EDIT_SEARCH;
    static const long IDC_EDIT_QUANTITY;
    static const long IDC_EDIT_PRICE;
    static const long IDC_RICHEDIT_REMARK;
    static const long IDC_THEDAY;
    static const long IDC_LIST;
    //控件变量
    wxBoxSizer *topSizer_;
    wxButton *btn_Add_Mod_;
    wxButton *btn_Exit_;
    wxButton *btn_Search_;
    wxButton *btn_Del_;
    wxChoice *combo_search_;
    wxChoice *combo_type_;
    wxTextCtrl *text_search_;
    wxNumberCtrl *text_price_;
    wxNumberCtrl *text_qua_;
    wxTextCtrl *text_remark_;
    wxDatePickerCtrl *time_;
    wxListCtrl *list_;

    //控件事件
    void OnBnClickedBtnSearch(wxCommandEvent& event);
    void OnBnClickedBtnAddMod(wxCommandEvent& event);
    void OnBnClickedBtnDel(wxCommandEvent& event);
    void OnBnClickedBtnExit(wxCommandEvent& event);
    void OnNMClickList(wxListEvent& event);
    void OnNMDblclkList(wxListEvent& event);

    //成员变量
    int m_addormod_;//0表示没执行添加或更新操作，1为表示执行添加操作，2表示执行更新操作
    wxString m_keyvalue_;//数据表中主键值
    wxString typeid_;//类别编号:18油，19米，100煤气
    std::pair<wxString,int> cash_keyvalue;//时间为当前时间，时段为-2，即其他时段
    //自定义函数
    void CreateCtrlAndEvent();//创建控件
    void EnableAllCtrl(bool isEnable);
    void InitComboBoxAndListCtrl();
public:
    static const wxString TABLENAME;
    static const wxString VIEWNAME;

    DECLARE_EVENT_TABLE()
};

#endif
